<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title></title>
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js">
		</script>

		<script type="text/javascript">
			wx.config({    //ctrl+shift+f格式化代码
				debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
				appId: 'wxffe325df9013a095', // 必填，公众号的唯一标识
				timestamp:1 , // 必填，生成签名的时间戳
				nonceStr: '1', // 必填，生成签名的随机串
				signature: '4023a32fbd0b281b85087a933c82fa029a1bd7b1', // 必填，签名
				jsApiList: ['getNetworkType','scanQRCode'] // 必填，需要使用的JS接口列表   注意配置权限
			});
			
			wx.ready(function(){
			    // config信息验证后会执行ready方法，所有接口调用都必须在config接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在ready函数中。
			    
			    
				  wx.getNetworkType({
					success: function (res) {
						var networkType = res.networkType; // 返回网络类型2g，3g，4g，wifi
						
						console.log(networkType);
					}
				  });
				  
				  
				  document.querySelector('#scanQRCode').onclick=function(){
				  	
				  	  wx.scanQRCode({
						needResult: 1, // 默认为0，扫描结果由微信处理，1则直接返回扫描结果，
						scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码，默认二者都有
						success: function (res) {
						var result = res.resultStr; // 当needResult 为 1 时，扫码返回的结果
						}
					 });
				  	
				  }
				  				
				  
			});
						
			wx.error(function(res){
			    // config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名。
			});
						
			
		</script>

	</head>

	<body>

		<button id="scanQRCode">
			
			扫一扫111
		</button>
	</body>

</html>